var readline = require('readline');
const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
  terminal: false
});
let flag = false;// 初始状态为负数，表示还没开始读取
let t, n, k, arr, ans = 0;
rl.on('line', function (line) { // javascript每行数据的回调接口
  if (flag == false) { // 测试用例第一行读取n
    t = parseInt(line.trim()) // 读取t
    flag = true
  } else if (ans == 0) { // 如果第一次读取
    [n, k] = line.split(' ').map(item => parseInt(item)) // 转成数字  n 表示多少个数 k表示要操作几次
    ans++; // ans次数+1
  } else if (ans == 1) { // 读取第二行
    arr = line.split(' ').map(item => parseInt(item)) // 转成数组
    let res = 0
    for (let i = 0; i < n; i++) {
      if (arr.indexOf(arr[i]) !== i) {
        res++
      }
    }
    let times = n % k
    if (n - res >= times) { // 如果这个大于重复的个数
      console.log('Yes')
    } else {
      console.log('No')
    }
    ans = 0 // 重置计数器
  }
});


